/*
 * Copyright 2025 The JA-SIG Collaborative. All rights reserved.
 * distributed with this file and available online at
 */
package com.lap.auth.domain.menu.repository;

import com.lap.auth.domain.menu.Menu;
import java.util.List;
import java.util.Optional;

/**
 * 菜单仓储接口
 *
 * @author Shuisheng Lao(劳水生)
 * @version 0.0.1
 */
public interface MenuRepository {

  Integer save(Menu menu);

  void deleteById(Integer id);

  Optional<Menu> findById(Integer id);

  List<Menu> findList();

  List<Menu> findByPid(Integer id);

  List<Menu> findMenuByRoleIds(List<Integer> roleIds);

  List<String> findOptionsByRoleIds(List<Integer> roleIds);
}
